package cliente.rede;

import java.io.ByteArrayOutputStream;
import java.io.DataOutputStream;
import java.io.IOException;

public class Pacote {
		private int seqnum;
		private byte[] dados;
		
		public Pacote(byte[] dados, int seqnum, int tamanho) {
			this.seqnum = seqnum;
			this.dados = new byte[tamanho];
			System.arraycopy(dados, 0, this.dados, 0, tamanho);
		}
		public Pacote(byte[] dados, int seqnum) {
			this.seqnum = seqnum;
			this.dados = dados;
		}
		public Pacote() {
			// TODO Auto-generated constructor stub
		}
		public byte[] prepararPacote() {
			ByteArrayOutputStream bs = new ByteArrayOutputStream(4 + this.dados.length);
			DataOutputStream ds = new DataOutputStream(bs);
			try {
				ds.writeInt(this.seqnum);
				ds.write(this.dados);
			} catch (IOException e) {
				// Should not happen
			}
			return bs.toByteArray();
		}

		public int getSeqnum() {
			return seqnum;
		}

		public void setSeqnum(int seqnum) {
			this.seqnum = seqnum;
		}

		public byte[] getDados() {
			return dados;
		}

		public void setDados(byte[] dados) {
			this.dados = dados;
		}
		
		
}
